package co.yixiang.service.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;


@Data
@ApiModel(value = "OrderQueryCriteia对象", description = "订单列表查询")
public class OrderQueryCriteia {
    /**
     * 订单来源：1:ANDROID收银终端；2:IPAD自助终端；
     * 3:ipad收银终端；31:微信官微；32:微信商微；
     * 33:微信快捷支付；41:百度外卖；51:百度直达号；
     * 61:百度糯米点菜；71:百度地图；81:呼叫中心；
     * 91:必胜客自助；92:味千；111:商户官网；131:loyal；
     * 141:OnMobile 客如云；142: onmobile os；
     * 151:熟客；161:饿了么；171:点评正餐；
     * 181:美团外卖菜；191:安卓自助
     */
    @ApiModelProperty(value = "门店ID")
    private String shopIdenty;

    @ApiModelProperty(value = "订单来源")
    private List<Integer> source;
    /**时间单位为毫秒，只支持最近15天数据查询*/
    @ApiModelProperty(value = "开始时间")
    private Long startTime;

    @ApiModelProperty(value = "结束时间")
    private Long endTime;
    /**
     * timeType=1此字段代表营业日；timeType=2代表订单支付时间；；注：时间单位为毫秒，只支持最近15天数据查询
     * 默认下单时间；1-下单时间；2-支付时间；推荐使用支付时间(返回值当中的checkOutTime)作为分页参数，这样会降低查询靠近当前时间的订单的丢单几率
     * 注: 建议使用支付时间(timeType 取2)查询,结果更准确
     */
    @ApiModelProperty(value = "时间类型")
    private Integer timeType;

    @ApiModelProperty(value = "页码；从1开始；不传默认为1")
    private Integer pageNo;

    @ApiModelProperty(value = "每页条数；取值范围10~100,不传默认100")
    private Integer pageSize;
}
